package com.mall.module.system.domain.entity;

import lombok.Data;
import lombok.Builder;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;

import java.time.LocalDateTime;

/**
 * 登出日志实体
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class LogoutLog {
    private Long id;                 // 日志ID
    private Long userId;             // 用户ID
    private String username;         // 用户名
    private String token;            // JWT Token（脱敏）
    private String deviceId;         // 设备ID
    private String deviceType;       // 设备类型
    private String ipAddress;        // IP地址
    private String userAgent;        // 用户代理
    private String logoutReason;     // 登出原因（主动登出、超时、强制下线等）
    private String logoutType;       // 登出类型（logout、force_logout、timeout等）
    private LocalDateTime logoutTime; // 登出时间
    private Long sessionDuration;    // 会话持续时间（秒）
    private String remark;           // 备注
    private LocalDateTime createTime; // 创建时间
} 